﻿
#pragma once
#include "CodeGen.h"

class DefGen : public CodeGen {
public:
	DefGen() {}
	DefGen(const std::string& n, AstType* t) : name(n) {
		this->type = t;
	}
	std::string name;
	CodeGen* value = nullptr;

	virtual llvm::Value* generateCode(llvm::Module *m, llvm::Function *func, llvm::IRBuilder<>&);
private:
	llvm::Value* def = nullptr;
	bool isClass = false;
};